package com.hxgis.common.service;

import com.hxgis.common.entity.RainDayInfo;
import com.hxgis.common.vo.AreaFrequencyVO;
import com.hxgis.common.vo.SingleFrequencyVO;

import java.util.List;

/**
 * @author cqj
 * @version 1.0
 * @date 2019/9/16 16:14
 */
public interface RainstormFeatureService {

    /**
     * 转换单站暴雨事件算法
     * @param startYear
     * @param endYear
     */
    void transSingleStrom(String startYear, String endYear);

    /**
     * 转换单站暴雨事件算法
     * @param startTime
     * @param endTime
     */
    void transSingleStromByDay(String startTime, String endTime);

    void delSingleStromByDay(String startTime, String endTime);

    /**
     * 计算区域暴雨过程算法
     * @param startTime
     * @param endTime
     * @param stationNos
     */
    void featureAreaStrom(String startTime, String endTime, List<String> stationNos);

    /**
     * 全国持续性暴雨特征指标
     * @param startTime
     * @param endTime
     */
    List<SingleFrequencyVO> rainFeatureTarget(String startTime, String endTime);

    /**
     *
     * @param startTime
     * @param endTime
     * @param continueDays 传 3 4 5
     * @param flag 1: 普通 2：相当暴雨日指标
     * @return
     */
    List<SingleFrequencyVO> featureContinueDaysTarget(String startTime, String endTime, Integer continueDays, Integer flag);

    /**
     * 每年发生暴雨过程的数量 按年分组
     * @param startTime
     * @param endTime
     * @param flag  all south north middle
     * @return
     */
    List<AreaFrequencyVO> featureAreaFrequencyTarget(String startTime, String endTime, String flag);


    RainDayInfo queryRainFallByTime(Long time, String stationNo);

}
